// import type { Rule } from 'ant-design-vue/es/form';
export interface EnumProps {
  label: string; // 选项框显示的文字
  value: any; // 选项框值
  locale?:{[key: string]:string},
  disabled?: boolean; // 是否禁用此选项
  children?: EnumProps[]; // 为树形选择时，可以通过 children 属性指定子选项
}

export type InputType =
| 'text'
| 'complete'
| 'password'
| 'select'
| 'number'
| 'switch'
| 'slider'
| 'radio'
| 'checkbox'
| 'rate'
| 'date'
| 'rangeDate'
| 'time'
| 'treeSelect'
| 'textarea'
| 'upload';

export type FixedProp = 'left' | 'right';

export type Configure = {
  type: InputType;
  label: string;
  prop: string;
  searchProps: { [key: string]: any }; // 搜索项参数，根据 element 文档来，标签自带属性 > props 属性
  searchInitParam: string | number | boolean | any[]; // 搜索项初始值
  enum: EnumProps[]; // 枚举类型（渲染值的字典）
  span:number; // 当前表单项占比 参数为栅格列
  rules:any[]
}

export type ConfigureType = Partial<Configure>

export type NamePath = string | number | (string | number)[]

export type formType = {
      isvalidate : boolean
      layout : [number,number]
      colNum : number,
      showButton:boolean
}
